import sys

def cycle( L, premier ):
    c = [premier]
    rang_courant = 0
    
    while 1:
        suivant = L[ c[rang_courant] ]
        print "suivant = " ,  suivant
        if  suivant != premier : 
            c.append( suivant )
            rang_courant =  rang_courant + 1 
        else :
            print  "fin premier cycle c=",c
            return c 

def main () :
    L=[1,2,0,3,5,4,6,7,9,8]
    print "permutations : ", L
    LC=[]
    C=[]
    i=1
    for i in L :
        if i in C: continue
        C =  cycle( L, i )
        if len(C)>1 :        LC.append(C)
        
    print LC
     
main ()
